package cn.wizzer.framework.util.param;

import java.lang.annotation.ElementType;
import java.lang.annotation.Target;

/**
 * 参数信息
 */
@Target(ElementType.PARAMETER)
public @interface Param {

    String name() default "";

    /**
     * 类型
     */
    Class type() default Object.class;

    /**
     * 必要
     */
    boolean required() default false;

    /**
     * 屏蔽
     */
    boolean disable() default false;

    //region 值

    int max() default -1;

    int min() default 0;

    /**
     * jsonStr / string
     */
    String[] in() default {};

    /**
     * jsonStr / string
     */
    String[] notIn() default {};

    String eq() default "";

    String neq() default "";

    /**
     * 正则验证
     */
    String regex() default "";

    /**
     * 默认值
     */
    String dft() default "";

    //endregion



}
